Reliable transport protocols are used in networking systems to ensure data is correctly received when errors in the transmission occur. In general, reliable transport protocols assign sequence numbers packets to packets when the packets are first transmitted. When the packets are received at the destination (either next hop, or ultimate destination), the receiver transmits an acknowledgement packet back to the originator indicating which sequence number was received. Packets that are pending acknowledgement are typically placed into a requeue buffer. However, in a typical reliable packet transport system transmitter each receiving node has a dedicated requeue buffer, which is usually limited to a given number of data packets that can be outstanding. Therefore, these systems are not easily reconfigurable.
Therefore a need exists to overcome the problems with the prior art as discussed above.